<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <title>外发单位管理</title>
    <% include("/common/common_css_js.html"){} %>
</head>
<body>
    <div style="padding-bottom: 5px;">
        <div id="queryForm" class="uc-toolbaroverflow" _borderStyle="border-top:0;">
            <span class="separator"></span>
            <span>外发单位名称：</span>
            <input name="name" class="mini-textbox" />
            <span>地址：</span>
            <input name="address" class="mini-textbox" />

            <span class="separator"></span>

            <% if(so.hasPermission("bOutUnit:query")){%>
                <a class="mini-button" iconCls="icon-search" onclick="search()">查询</a>
            <% } %>

            <% if(so.hasPermission("bOutUnit:queryCndClear")){%>
                <a class="mini-button" iconCls="icon-new" onclick="clearSearch()">清空查询条件</a>
            <% } %>

            <span class="separator"></span>

            <% if(so.hasPermission("bOutUnit:add")){%>
                <a class="mini-button" iconCls="icon-add" onclick="add()">新增</a>
            <% } %>

            <% if(so.hasPermission("bOutUnit:edit")){%>
                <a class="mini-button" iconCls="icon-edit" onclick="update()">编辑</a>
            <% } %>

            <% if(so.hasPermission("bOutUnit:delete")){%>
                <a class="mini-button" iconCls="icon-remove" onclick="deleteOutUnit()">删除</a>
            <% } %>

        </div>
    </div>

    <div class = "mini-fit">
        <div id="datagrid1" class="mini-datagrid"
             style="width: 100%; height: 100%;"
             url="${base}/pages/out_unit_manage/query" idField="id"
             showPager="true" pageSize="20" sizeList="[10,20,30,50,100]"
             allowResize="true"
             allowCellWrap="true">
            <div property="columns">
<!--                <div field="id" width="140" headerAlign="center" align="left" allowSort="true">表ID</div>-->
                <div field="name" width="140" headerAlign="center" align="center" allowSort="true">外发单位名称</div>
                <div field="address" width="140" headerAlign="center" align="center" allowSort="true">地址</div>
                <div field="contact" width="140" headerAlign="center" align="center" allowSort="true">联系人</div>
                <div field="phone" width="140" headerAlign="center" align="center" allowSort="true">联系电话</div>
                <div field="comment" width="140" headerAlign="center" align="center" allowSort="true">备注</div>
                <div field="masterBillForeignCompanyId" width="140" headerAlign="center" align="center" data-options='{cacheName:"sysCompany"}' renderer="commonRender">主单对客户公司名</div>
            </div>
        </div>
    </div>

    <!--编辑窗口-->
    <div id="updatePanel" class="mini-window" title="外发单位管理" style="width:700px;height:400px;"
         showMaxButton="true" showCollapseButton="false" showMinButton="true" showShadow="true"
         showToolbar="true" showFooter="true" showModal="true" allowResize="true" allowDrag="true">
        <div property="footer" style="padding:10px;text-align: right">
            <a  id="insertOrUpdateSaveBtn" name="insertOrUpdateSaveBtn" class="mini-button" iconCls="icon-save" onclick="saveInsertOrUpdate()">保存</a>
        </div>
        <div id="outUnitForm">
            <input id="id" name="id" class="mini-hidden"/>
            <table style="width: 100%">
                <tr>
                    <td><label>外发单位名称:</label>
                    </td>
                    <td colspan="3"><input id="name" name="name" class="mini-textbox" required="true" requiredErrorText="名称不能为空" emptyText="请输入名称"/></td>
                </tr>
                <tr>
                    <td><label>地址:</label></td>
                    <td colspan="3"><input id="address" name="address"  class="mini-textarea" required="false" requiredErrorText="地址不能为空" emptyText="请输入地址" style="width:550px;height: 60px;"/></td>
                </tr>
                <tr>
                    <td><label>联系人:</label></td>
                    <td><input id="contact" name="contact"  class="mini-textbox" required="false" requiredErrorText="联系人不能为空" emptyText="请输入联系人" /></td>
                    <td><label>联系电话:</label></td>
                    <td><input id="phone" name="phone" class="mini-textbox" required="false" emptyText="请输入联系电话" requiredErrorText="联系电话不能为空"/></td>
                </tr>
                <tr>
                    <td><label>对外公司名:</label></td>
                    <td colspan="3">
                        <input id="masterBillForeignCompanyId" name="masterBillForeignCompanyId"  textField="name" valueField="id"  class="mini-combobox" required="false" requiredErrorText="对外公司名不能为空" style="width: 80%"/>
                    </td>
                </tr>

                <tr>
                    <td><label>备注:</label></td>
                    <td colspan="3"><input id="comment" name="comment" class="mini-textarea" required="false" requiredErrorText="备注不能为空" style="width:550px;height: 60px;"/></td>
                </tr>
            </table>
        </div>
    </div>
    <script type="text/javascript">
        mini.parse();
        let grid = mini.get("datagrid1");
        let oper;
        let outUnitForm = new mini.Form("#outUnitForm");

        $(function () {

            let masterBillForeignCompanyIdJsonData = commonRenderDropList("sysCompany");
            mini.get("masterBillForeignCompanyId").load(masterBillForeignCompanyIdJsonData);

            // 加载列表数据
            grid.load();

            //新增、修改弹出框默认操作
            oper = OPER_ADD();

        });

        function search() {
            let form = new mini.Form("#queryForm");
            let data = form.getData(true);
            grid.load(data);
        }

        function clearSearch() {
            let form = new mini.Form("#queryForm");
            form.clear();
        }

        function add(){
            outUnitForm.clear();
            oper = OPER_ADD();

            // 弹出添加窗口
            public_showModelAtPos("updatePanel", "center", "middle");
        }

        function update(){
            outUnitForm.clear();
            // 获取当前选中的行
            let row = grid.getSelected();
            if(!row){
                mini.alert("请选择要编辑的行!","外发单位",null);
                return;
            }
            outUnitForm.setData(row);
            oper = OPER_UPDATE();

            // 弹出添加窗口
            public_showModelAtPos("updatePanel", "center", "middle");
        }

        //新增保存或修改保存
        function saveInsertOrUpdate(){
            // 添加并保存
            outUnitForm.validate();
            if (outUnitForm.isValid() == false){
                showAlert("请将必填信息填写完整！");
                return;
            }

            mini.confirm(
                "确定保存外发单位信息?",
                "外发单位",
                function(action) {
                    if (action == "ok") {
                        let data = outUnitForm.getData(true);
                        let methodName = oper == OPER_ADD() ? "insert" : "update";
                        let ret = public_getServerData("${base}/pages/out_unit_manage/" + methodName,data);
                        public_showTip(ret);
                        if(ret.ok) {
                            // 重新刷新数据
                            grid.load();
                            public_onCancel('updatePanel');
                            refreashCache();
                        }
                    }
                });


        }

        function deleteOutUnit(){
            let select = grid.getSelected();
            if(select == null){
                public_showErrorTips("未选中");
                return;
            }
            mini.confirm(
                "确定删除选择的外发单位?",
                "外发单位",
                function(action) {
                    if (action == "ok") {
                        let ret = public_getServerData("${base}/pages/out_unit_manage/delete",select.id);
                        public_showTip(ret);
                        if(ret.ok) {
                            refreashCache();
                            // 重新刷新数据
                            grid.removeRow(select, true);
                            refreashCache();
                        }
                    }
                });
        }

        // 刷新缓存，把刷新的缓存放到父页面，应当调用父级页面方法刷新
        function refreashCache() {
            parent.window.loadCache();
        }

    </script>
</body>
</html>